Predicting that a parking space is about to be vacated

ABSTRACT

A method implementable in a mobile device includes determining a driving or walking motion state of the mobile device associated with a user from at least a motion type of sensor on the mobile device and storing a parking location for a vehicle associated with the mobile device, received from a location type of sensor on the mobile device, when the mobile device changes from a driving state to a walking state.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims benefit from U.S. Provisional Patent ApplicationNo. 61/432,625, filed Jan. 14, 2011, which is hereby incorporated in itsentirety by reference.

FIELD OF THE INVENTION

The present invention relates to parking systems generally.

BACKGROUND OF THE INVENTION

PCT Publication WO 2009/125350 to Levy et al. describes a mobilecommunications device which includes a locator unit to receive andprocess information regarding a current location for the mobilecommunications device, a parking status determination unit to determinea parking status for the device based on at least changes in the currentlocation, and a communication unit to forward the parking status to aparking community processor.

SUMMARY OF THE PRESENT INVENTION

There is therefore provided, in accordance with a preferred embodimentof the present invention, a method implementable in a mobile device. Themethod includes determining a driving or walking motion state of themobile device associated with a user from at least a motion type ofsensor on the mobile device and storing a parking location for a vehicleassociated with the mobile device, received from a location type ofsensor on the mobile device, when the mobile device changes from adriving state to a walking state.

Additionally, in accordance with a preferred embodiment of the presentinvention, the method includes detecting an approach event indicatingthat the mobile device is heading back to the parking location andtransmitting a “returning to parking spot” indicator to a parking systemupon the detecting.

Moreover, in accordance with a preferred embodiment of the presentinvention, the motion type of sensor can be at least one accelerometeror the combination of a low accuracy continually active, sensor toprovide a preliminary motion state and a high accuracy sensor, activatedfor a short period of time, to provide a definitive motion state.

Further, in accordance with a preferred embodiment of the presentinvention, the location type of sensor is a GPS (global positioningsystem) sensor.

Alternatively, in accordance with a preferred embodiment of the presentinvention, the motion sensor is a low accuracy sensor and the locationsensor is a high accuracy sensor.

Moreover, in accordance with a preferred embodiment of the presentinvention, the detecting includes determining when a distance from theparking location is reducing and when the distance is within apredetermined proximity.

Alternatively, in accordance with a preferred embodiment of the presentinvention, the motion sensor is a low accuracy sensor to provide aninitial driving estimate and a high accuracy sensor to provide a finaldriving state decision.

Further, in accordance with a preferred embodiment of the presentinvention, the method includes identifying when the device is picked upby a user of the device and using the identifying to move the mobiledevice into a maybe parked state.

Still further, in accordance with a preferred embodiment of the presentinvention, the identifying includes sensing when a 3D position of thedevice has changed significantly.

Moreover, in accordance with a preferred embodiment of the presentinvention, the method also includes declaring the parked state for thevehicle once a walking state for the device has been declared.

Further, in accordance with a preferred embodiment of the presentinvention, the method also includes counting steps of the user in thewalking state and determining the parked location of the vehicle usinginformation about the steps.

There is also provided, in accordance with a preferred embodiment of thepresent invention, a method implementable in a computing device. Themethod includes receiving information regarding a first person'smovements towards a parked car and providing to at least one second useran indication that the car of the first person is about to vacate aparking spot close to the current location of the at least one seconduser.

Further, in accordance with a preferred embodiment of the presentinvention, the providing includes finding members of a community whichare driving in an area close to the parking spot.

Still further, in accordance with a preferred embodiment of the presentinvention, the providing includes reducing the number of members foundin the step of finding to a minimum number.

Additionally, in accordance with a preferred embodiment of the presentinvention, the method also includes enabling the second user to reservea spot about to be vacated by the first user.

Finally, in accordance with a preferred embodiment of the presentinvention, the method also includes enabling payment by the second userto the first user for the spot.

BRIEF DESCRIPTION OF THE DRAWINGS

The subject matter regarded as the invention is particularly pointed outand distinctly claimed in the concluding portion of the specification.The invention, however, both as to organization and method of operation,together with objects, features, and advantages thereof, may best beunderstood by reference to the following detailed description when readwith the accompanying drawings in which:

FIG. 1 is a schematic illustration of the operation of a parking client,constructed and operative in accordance with a preferred embodiment ofthe present invention;

FIG. 2 is a state machine illustration of the operation of the parkingclient of FIG. 1;

FIG. 3 is a schematic illustration of a parking server operative inconjunction with the parking client of FIG. 1; and

FIG. 4 is a flow chart illustration of the operation the parking serverof FIG. 3.

It will be appreciated that for simplicity and clarity of illustration,elements shown in the figures have not necessarily been drawn to scale.For example, the dimensions of some of the elements may be exaggeratedrelative to other elements for clarity. Further, where consideredappropriate, reference numerals may be repeated among the figures toindicate corresponding or analogous elements.

DETAILED DESCRIPTION OF THE PRESENT INVENTION

In the following detailed description, numerous specific details are setforth in order to provide a thorough understanding of the invention.However, it will be understood by those skilled in the art that thepresent invention may be practiced without these specific details. Inother instances, well-known methods, procedures, and components have notbeen described in detail so as not to obscure the present invention.

The device described in PCT Publication WO 2009/125350 to Levy et al.processes data from a locator unit of some kind (a GPS, mobile basestation signal, compass, or accelerometer). However, Applicants haverealized that a locator unit is unnecessary for most of the processingwhich the device needs to do and is only necessary to determine theactual parking spot. Applicants have realized that most of theprocessing concerns determining the motion state (parking, driving,walking, moving, etc.) of the user, which, since the person is inmotion, the current location is of less interest. Therefore, Applicantshave realized that, when the user is in motion, the device needs only toknow the motion state, which may be determined from accelerometers,typically present on mobile devices, which use relatively little batterypower. Moreover, Applicants have realized that, only when the userbecomes parked does the device need to determine the current location.Thus, in the present invention, the device may take two inputs, one froma set of accelerometers (set of acceleration and orientation sensors),for the motion information, and one from a GPS, for the parkinglocation. The latter may utilize more battery power but is only requiredat the time of parking.

Applicants have also realized that knowing that a car is about to vacatea parking space is highly valuable for car drivers searching forparking. Moreover, Applicants have realized that knowing that a personis heading toward their car gives advanced knowledge that a parking spotis about to be vacated. That advanced knowledge may be provided todrivers to enable them to drive directly to the about to be vacatedspot, thus reducing their time, money and gas searching for a spot.Moreover, having this information for both parking lots and on streetparking is invaluable.

Reference is now made to FIG. 1, which is a schematic illustration of asystem for providing about to be vacated parking information to usershaving mobile devices. The system comprises a vacating parking server 10receiving information from a plurality of mobile devices 12, each havinga vacating parking client 14 and a plurality of motion sensors, such asat least one accelerometer 16 and a GPS (global positioning system) unit18. Typically, motion sensors such as accelerometers 16 and GPS 18 maybe standard features of mobile devices 12 whose output may be providedto their associated vacating parking client 14. Moreover, mobile devices12 may communicate with each other and with server 10 via a mobilecommunication system 19, shown as a transmitting tower.

Mobile devices 12 typically move with the user. In accordance with apreferred embodiment of the present invention, the motion of the usermay be determined from data from at least one accelerometer 16. Thus, ifthe user is in a car, for example, on a highway 20, the speed of theassociated mobile device, such as device 12A, may be that of the car.However, if the car is on a side street, such as side street 22, thespeed of the mobile device, such as mobile device 12B, may besignificantly slower. If the mobile device is with the user as s/hewalks either to or from the car, such as mobile device 12A, the speedmay be even slower. Moreover, there is a point at which the device maycome to a stop, after which the device may be carried by a user who iswalking. This point may be the parking spot and the location of theparking spot, which, in accordance with the present invention may beprovided by GPS 18, may be noted.

In accordance with a preferred embodiment of the present invention,vacating parking clients 14 may include a state machine 15 to determinethe state of their associated mobile devices 12 and, accordingly, oftheir associated users, as their users move around. Clients 14 maytransmit regular updates to vacating parking server 10, thereby enablingserver 10 to determine which devices 12 are parked. When a client 14 maytransmit an indication that its associated mobile device 12 may bemoving back toward its parking location, server 10 may find clients 14in the vicinity of the parking location, such as parking lot 24, and mayupdate them that a parking spot may shortly become available.

In accordance with a preferred embodiment of the present invention,state machine 15 may utilize a motion sensor, such as at least oneaccelerometer 16, to track a motion state and may utilize a positionsensor, such as GPS 18, to determine the parking location. With thisarrangement, parking client 14 may utilize less battery power, asaccelerometers 16 may be utilized only for motion sensing (without thesignificant overhead of calculating location) and GPS 18, which utilizesa significant amount of battery power, may be activated rarely, such asfor the location measurement.

Reference is now made to FIG. 2, which represents an overall statemachine for the vacating parking client 14. Client 14 may have threemajor states, that of DRIVING, PARKED and MAYBE_PARKED. The followingdescriptions generally define the states:

INITIAL_STATE—the initial state

DRIVING—Car is moving.

MAYBE_PARKED—Car maybe parked.

PARKED—Car is parked.

Client 14 may change state as a function of whether walking, some otherkind of movement, zero speed or high speed was detected. These motionsmay be detected as patterns of data from accelerometers 16, where highspeed and walk have particular patterns of interest, described in moredetail hereinbelow.

Client 14 may also change state as a function of distance from apossible parking state. In particular, if high speed was detected, fromany state, client 14 may move to the DRIVING state. If, from the DRIVINGstate, a zero speed motion was detected, client 14 may move into theMAYBE_PARKED state and the parking location, from just before thewalking may have started, may be received from GPS 18 and stored as acandidate parking location.

In an alternative embodiment, or in addition, client 14 may move intothe MAYBE_PARKED state when the device is “picked up” by the user whenleaving the vehicle. For example, this may be detected by observing aconsistent and major change in the device's three-dimensional position,which may be provided by accelerometers 16 and/or gyroscopes or anyother position sensing device.

If, from the MAYBE_PARKED state, a walking pattern was detected, client14 may move into the PARKED state and the candidate parking location,received from GPS 18, may be stored as the actual parked location andmay be reported to server 10.

Client 14 may confidently declare the PARKED state once the switch fromdriving to walking has been detected and may take the parking locationas the location where walking began and/or the candidate location whenthe MAYBE_PARKED state was entered. The transition to “MAYBE_PARKED”event may help to ensure as accurate a parking location as possible.However, it may initially only be a “maybe” state as the vehicle mayswitch to it by mistake during driving but as soon as high speed may bedetected, the state may be changed to “DRIVING”.

While in the parked state, client 14 may track the distance, using GPS18, from the parking location. When the distance is reducing and isclose again to the parking location, client 14 may raise an approachevent and may report the approach event to server 10. Parking server 10may, in turn, transmit the parking location of the client 14 in thePARKING state to any clients 14 within a pre-determined proximity of theparking location which is about to be vacated.

Finally, if high speed is detected at any time, client 14 may transitionback to the DRIVING state.

To detect any of the movement patterns, client 14 may generallycontinually process the signal from accelerometers 16 in real time,searching for either a driving pattern or a walking pattern. A drivingpattern may be one of steady acceleration. Alternatively, a drivingpattern may be detected if the device quickly changes base stations. Thelatter may utilize the cellular base station ID, received by thecellular phone elements of device 12 and may determine how quickly thebase station ID changes.

Since low power sensors, such as accelerometers and the cellular phoneelements, may determine speed but only with low accuracy, if desired,client 14 may activate a more accurate sensor, such as GPS 18, for ashort time after a possible driving pattern may be detected, to finalizethe decision of being in the DRIVING state. For example, client 14 maycheck if the speed of the device is above 20 km/hour.

A walking pattern may be the acceleration pattern caused by the factthat the device moves up and down on each walk step. An exemplaryprocess that may be used by client 14 is described in a patentapplication entitled “Mobility Determination”, attorney file numberP-12007, the disclosure of which is incorporated herein by reference, tobe filed concurrently herewith and assigned to the common assignee ofthe present application. Client 14 may utilize accelerometers 16 as apedometer and may count the walk steps of the person carrying thedevice. Client 14 may count and validate the walk steps by matching thefrequency of steps to a typical walking pace of a human being. There maybe many other possible ways of using the device sensors to determinethat a person is walking.

Moreover, the steps may alternatively be utilized to determine theparked location of the vehicle by counting the number of steps and byknowing the direction of motion. With this, client 14 may determine thepoint at which the walking started which it may also utilize to estimatethe current distance from the vehicle.

In an alternative embodiment, a mobility state determiner, such as thatdescribed in the US patent application entitled “MobilityDetermination”, may be utilized. The mobility state determiner describedtherein differentiates between a walking state and a driving state as afunction of the variance of the accelerometer signal.

Reference is now made to FIG. 3, which illustrates the elements ofvacating parking server 10, and to FIG. 4 which illustrates an exemplaryoperation. Vacating parking server 10 may comprise a database 30 storingthe locations of current driving members of the parking community (i.e.those users who have signed up for this service and are currently in aDRIVING state), a database 32 storing the parking locations of allmembers having a PARKED state and a matching unit 34 to find membersclose to a parking location when parking server 10 may receive anapproach event for that parking location.

In step 40, matching unit 34 may search member location database 30 forall member locations within a predefined proximity to the parkinglocation associated with the current approach event, where thepredefined proximity may be, for example, within a 1 kilometer radius.The pre-defined proximity is variable that may have variety of values,based on the hour of the day, the day in the week, weekends, holidays,special events, geographical locations, etc.

Matching unit 34 may then attempt to remove members that are currentlytoo far from the parking location and for which there is no chance ofthem arriving at the parking location within a reasonable amount oftime. Matching unit 34 may also attempt to keep the number of memberswho will receive an “about to be vacated” parking location notificationto a minimum, such as 1-3, to keep from having many members vying forthe same parking spot.

In step 42, matching unit 34 may remove all those members moving in adirection away from the parking location or which, according to areasonable path calculation, such as may be available from any mappingsoftware, are unlikely to arrive at the parking location in less than apredefined length of time.

Matching unit 34 may check if there are too many members in its currentlist, where “too many” may be any predefined value, such as 3. If thereare too many members, matching unit 34 may remove (step 44) those with alow priority or with a low service level (i.e. those that have not paidfor a premium service)

Matching unit 34 may then check if there are still too many members inits current list and, if so, may transmit (step 46) the parking locationof the parking spot which is about to be vacated only to the closest oneor two in the list.

If desired, matching unit 34 may implement a reservation system. Unit 34may indicate, not only the available parking spot, but also the userreturning to the parking spot. Matching unit 34 may enable other users,such as those who are looking for a parking spot, to reserve a spot theysee about to be vacated. If desired, matching unit 34 may enable thereturning user to put his/her spot up for auction. The winning biddermay arrive at the parking spot and may pay the returning user, eitherwith cash or with digital cash, such as by a telephone to telephonepayment. The latter may be implemented by NFC, a payment system whichidentifies the nearby chip and authorizes payments therebetween.

On the parking client of the users receiving the ‘about to be vacated’parking indication, the parking spaces about to be vacated may bepresented on a map/in the form of a notification, or as an audiblenotification or in any other way. Users that receive the report and arein search of parking in the same area may use this data in order to getthe parking space about to be vacant.

It will be appreciated that the ability to predict that a parking spaceis about to be vacated may provide a powerful automatic parkingsolution.

Server 10 may also comprise units which may report on the activity ofparking spots over time. Data about parking spaces may be accumulatedinto a database together with additional attributes such as user ID, dayand time. The accumulated data may be classified to elements such asparking lots and on-street parking. The information may be a function oftime or day in a week, points of interest nearby and more.

It is possible to calculate the average parking availability over timefor a specific area by comparing the number of cars vacating parkingspaces in the given area to the number of cars parking in the same area.This estimation may be calculated as a function of time, day or season.

Using the above, server 10 may provide a search facility in which a usermay list search results according to parking availability, for example,a user wishing to go to the movies may list the cinemas according toaverage parking availability in the last hour or the predicted parkingavailability at the time of the movie screening.

Another possible application is related to location basedadvertisements. Server 10 may utilize information that a specific useris looking for parking to display to the user effective advertisementsof shopping places near the parking space.

The statistical parking spot data may be provided also for each userseparately, according to their typical daily behavior. In this case,server 10 may include a unit to predict where the user is expected topark according to their daily behavior and may provide them with parkingspot assistance accordingly. Similarly, server 10 may also identifyavailable spots based on patterns of how its users park over time. Forexample, server 10 may look for users which park in the sameneighborhood during weekdays and leave between 5:00 pm and 6:00 pm.Server 10 may utilize this information to predict which spots may becomeavailable.

Moreover, server 10 may include a unit which, upon receipt of anapproach event, may send to the approaching client relevantnotifications, such as alerts about possible traffic jams on their wayhome, availability of traps, traffic lights out of work etc.

On the client side, other units on device 12 may operate with client 14.For example, a calendar unit may know of an upcoming appointment and mayhave information regarding how long it may take to get to theappointment. The calendar unit may receive approach events and thus, mayrespond to a lack of an approach event by warning the user if s/he isabout to miss an appointment. The calendar unit may also have a paymenttime for the parking meter and may remind the user that parking paymenttime is overdue if the approach event is not received by a predefinedtime.

Unless specifically stated otherwise, as apparent from the precedingdiscussions, it is appreciated that, throughout the specification,discussions utilizing terms such as “processing,” “computing,”“calculating,” “determining,” or the like, refer to the action and/orprocesses of a computer, computing system, or similar electroniccomputing device that manipulates and/or transforms data represented asphysical, such as electronic, quantities within the computing system'sregisters and/or memories into other data similarly represented asphysical quantities within the computing system's memories, registers orother such information storage, transmission or display devices.

Embodiments of the present invention may include apparatus forperforming the operations herein. This apparatus may be speciallyconstructed for the desired purposes, or it may comprise ageneral-purpose computer selectively activated or reconfigured by acomputer program stored in the computer. Such a computer program may bestored in a computer readable storage medium, such as, but not limitedto, any type of disk, including floppy disks, optical disks,magnetic-optical disks, read-only memories (ROMs), compact discread-only memories (CD-ROMs), random access memories (RAMs),electrically programmable read-only memories (EPROMs), electricallyerasable and programmable read only memories (EEPROMs), magnetic oroptical cards, Flash memory, or any other type of media suitable forstoring electronic instructions and capable of being coupled to acomputer system bus.

The processes and displays presented herein are not inherently relatedto any particular computer or other apparatus. Various general-purposesystems may be used with programs in accordance with the teachingsherein, or it may prove convenient to construct a more specializedapparatus to perform the desired method. The desired structure for avariety of these systems will appear from the description below. Inaddition, embodiments of the present invention are not described withreference to any particular programming language. It will be appreciatedthat a variety of programming languages may be used to implement theteachings of the invention as described herein.

While certain features of the invention have been illustrated anddescribed herein, many modifications, substitutions, changes, andequivalents will now occur to those of ordinary skill in the art. It is,therefore, to be understood that the appended claims are intended tocover all such modifications and changes as fall within the true spiritof the invention.

What is claimed is:
 1. A method implementable in a mobile device, themethod comprising: determining a driving or walking motion state of saidmobile device associated with a user from at least a motion type ofsensor on said mobile device; and storing a parking location for avehicle associated with said mobile device, received from a locationtype of sensor on said mobile device, when said mobile device changesfrom a driving state to a walking state.
 2. The method according toclaim 1 and also comprising: detecting an approach event indicating thatsaid mobile device is heading back to said parking location; andtransmitting a “returning to parking spot” indicator to a parking systemupon said detecting.
 3. The method according to claim 1 and wherein saidmotion type of sensor is at least one accelerometer.
 4. The methodaccording to claim 1 and wherein said motion type sensor is a lowaccuracy continually active, sensor to provide a preliminary motionstate and a high accuracy sensor, activated for a short period of time,to provide a definitive motion state.
 5. The method according to claim 1and wherein said location type of sensor is a GPS (global positioningsystem) sensor.
 6. The method according to claim 2 and wherein saiddetecting comprises determining when a distance from said parkinglocation is reducing and when said distance is within a predeterminedproximity.
 7. The method according to claim 1 and wherein said motionsensor is a low accuracy sensor and said location sensor is a highaccuracy sensor.
 8. The method according to claim 1 and wherein saidmotion sensor is a low accuracy sensor to provide an initial drivingestimate and a high accuracy sensor to provide a final driving statedecision.
 9. The method according to claim 1 and also comprising:identifying when said device is picked up by a user of said device; andusing said identifying to move said mobile device into a maybe parkedstate.
 10. The method according to claim 9 and wherein said identifyingcomprises sensing when a 3D position of said device has changedsignificantly.
 11. The method according to claim 1 and also comprisingdeclaring said parked state for said vehicle once a walking state forsaid device has been declared.
 12. The method according to claim 11 andalso comprising counting steps of said user in said walking state anddetermining said parked location of said vehicle using information aboutsaid steps.
 13. A method implementable in a computing device, the methodcomprising: receiving information regarding a first person's movementstowards a parked car; and providing to at least one second user anindication that the car of said first person is about to vacate aparking spot close to the current location of said at least one seconduser.
 14. The method according to claim 13 and wherein said providingcomprises finding members of a community which are driving in an areaclose to said parking spot.
 15. The method according to claim 14 andwherein said providing comprises reducing the number of members found insaid step of finding to a minimum number.
 16. The method according toclaim 13 and also comprising enabling said second user to reserve a spotabout to be vacated by said first user.
 17. The method according toclaim 16 and also comprising enabling payment by said second user tosaid first user for said spot.